perm filename DIV2.IL[TIM,LSP]1  blob 
sn#679558 filedate 1982-09-23 generic text, type C, neo UTF8
 
COMMENT ā   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	 Dividing by 2 using lists of n ()'s
C00004 ENDMK
Cā;
;;; Dividing by 2 using lists of n ()'s
(DECLARE (LOCALVARS . T)(GLOBALVARS L))
(DEFINEQ
 (CREATE-N (LAMBDA (N)
		   (for I from 1 to N collect ())))
 (DIV2 (LAMBDA (L)
	       (for L in L by (CDDR L) collect (CAR L))))
 (DV2
  (LAMBDA (L)
	  (COND ((NULL L) ())
		(T (CONS (CAR L) (DV2 (CDDR L)))))))
 (TEST1 
  (LAMBDA (L)
	  (for I from 1 to 300 do
	       (DIV2 L)
	       (DIV2 L)
	       (DIV2 L)
	       (DIV2 L))))
 (TEST2 
  (LAMBDA (L)
	  (for I from 1 to 300 do
	       (DV2 L)
	       (DV2 L)
	       (DV2 L)
	       (DV2 L))))
)
(RPAQ L (CREATE-N 200.))
(* Here is what to time:
	  (test1 l)
	  (test2 l))